
def update_badge_list(model, name, pk, serializer, data):
    """
    更新model中 badges列表的方法，
    通多获得model下所有badge，然后进行badge列表更新

    Todo 限制在listserializer 或许获取能够抽出更为纯净的方法
    :param model: 要更新的主模型
    :param name: 对应主模型名称主键
    :param data: 要更新的数据
    :return:
    """

    """ 添加 对应联系 """
    for badge in data:
        badge[name] = pk

    instance_badges = model.objects.filter(**{name: pk})
    ser = serializer(instance_badges, data, many=True, partial=True)
    ser.is_valid()
    ser.save()